<?php
    //1.定义命名空间与本文件所在目录层级相同（app\home\controller）
    //2.因为composer自动载入类的需要
    //3.命名空间namespace之前不能有输出！
    namespace app\admin\controller;

    //1.引入框架核心目录中的View类
    //2.用于载入模板文件及向模板文件传递数据
    use houdunwang\view\View;

    //1.引入扩展模型中Attachment类
    //2，用于去框架核心目录中的Base类（经过Model）执行其中操作数据库的方法
    //3.起别名因为所引入的类的名称与该文件所定义的类名一致
    use system\model\Attachment as AttachmentModel;

    //1.定义Attachment类用于操作附件表attachment表中的数据（查询及删除）
    //2.继承Common类用于判断用户是否已经登录了
    //如果没有登录则需要登录才能操作
    class Attachment extends Common {
        //定义显示附件列表的方法
        public function lists(){
            //1.调用框架核心类Base的方法get获取附件表数据
            //2用于模板文件中调用显示出附件表数据（展示图片）
//            $data = AttachmentModel::get("asc");
            $data = AttachmentModel::q("SELECT * FROM attachment GROUP BY path ORDER BY aid");
            return View::make()->with(compact("data"));
        }

        //定义删除附件的方法
        public function remove(){
            //获取要删除的附件的序号（附件表attachment的主键值）
            $pri = $_GET['aid'];

            //1.调用查询到指定主键值的findToArray方法得到该条数据（结果为数组）
            //2.并访问下标为“path”的值（为附件的路径）
            $filePath = AttachmentModel::findToArray($pri)['path'];

            //1.定义默认的两张图片的路径数组
            //2.用于判断所要删除的图片是否为默认图片
            $defaultImgs = ['./attachment/default-man.jpg','./attachment/default-woman.jpg'];
            //如果要删除的图片不是默认图片则可以删除
            if(!in_array($filePath,$defaultImgs)){
                //删除附件文件
                unlink($filePath);
                //将附件表中attachment的对应记录也删除
                AttachmentModel::delete($pri);
                //成功后消息提示并返回
                $this->message("删除成功");
            }
        }



    }